'''

  经常会碰到一些耗时操作 造成页面卡顿

  可以创建多线程使用主线程更新界面,子线程实时处理我们的数据 最终在显示数据到界面

'''
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
import sys
import time
#模拟一个后台耗时操作

class BackThread(QThread):
    update_date=pyqtSignal(str)
    def run(self):
        while True:
            data=QDateTime.currentDateTime()
            currtime=data.toString("yyyy-MM-dd hh:mm:ss")
            self.update_date.emit(str(currtime))
            time.sleep(1)
class Window(QDialog):
    def __init__(self):
        QDialog.__init__(self)
        self.setWindowTitle('实时更新')
        self.resize(400,400)
        self.input=QLineEdit(self)
        self.input.resize(400,100)
        self.initUI()

    def initUI(self):
        #创建一个线程
        self.back=BackThread()
        #链接信号
        self.back.update_date.connect(self.handis)
        self.back.start()

    def handis(self,data):
        self.input.setText(data)


if __name__ == '__main__':
    app=QApplication(sys.argv)
    main=Window()
    main.show()
    sys.exit(app.exec_())